GNUSH v0902_ES
Sep 11th,
2009
KPIT Cummins
Infosystems Limited is releasing the GNUSH v0902_ES (Eclipse Support) toolchain, which is a
cross compiler tool for
Renesas (formerly
Hitachi and Mitsubishi) SH series of
microcontrollers.
SALIENT
FEATURES:
1. |
The
GNUSH v0902_ES ELF toolchain can now be integrated with KPIT GNU
Eclipse v1.1.0. KPIT GNU Eclipse is an Eclipse based Integrated
Development Environment (IDE) providing a user interface to KPIT
GNUSH ELF toolchains (for Windows
and Linux).
KPIT GNU Eclipse complements the Renesas HEW IDE and offers
users more options for development.
Please refer to the following link for more information on KPIT
GNU Eclipse,
http://kpitgnutools.com/releaseNotes.php |
2. |
The
GNUSH_ES v0902 toolchain is based on gcc-4.3.3 [released], binutils-2.19
[released], newlib-1.16.0 [released], gdb-6.8.50 [dated 27th
March 2009]. |
3. |
The
latest patches have been applied to gcc, binutils and newlib sources.
Please refer to the following link for the patches applied to
the GNUSH toolchain,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=002004&id=78&lang=en
|
4. |
The separate GUI
interfaces in HEW for the library generator, the compiler, the
assembler and the linker build phases have been replaced by a
single interface to allow users to make application-wide changes
far more easily. |
5. |
The GNUSH v0902_ES uses MinGW
based GDBSH debugger. |
ABOUT GNUSH
v0902_ES:
Release version: |
GNUSH
v0902_ES |
Release Date: |
September
11th, 2009 |
Platforms Supported: |
Red
Hat GNU/Linux v8.0 or later (or compatible distribution)
Windows NT/2000/XP/Vista |
NOTE: Windows 7 RC is not yet
officially supported but early testing shows no compatibility
issues |
Language: |
C,
C99,
C++ |
Targets: |
SH-1 |
|
SH-2 |
|
SH-2A |
|
SH-2E |
|
SH2-DSP |
|
SH-3
|
|
SH-3E |
|
SH3-DSP |
|
SH-4
|
|
SH-4A
|
|
SH-4AL-DSP |
Object File Format: |
ELF |
For free
technical support please register at
http://www.kpitgnutools.com/
For your feedback and suggestions please visit
http://www.kpitgnutools.com/feedback.php
CHANGES IN
THIS RELEASE:
This section
describes the enhancements made and the issues fixed in the v0902
release.
GCC:
1. |
If
the source code contained single as well as double precision
data types, then the compiler generated incorrect code for float
operation. The test case for this is:
int main(void)
{
double d;
float s;
d = 0.0;
d = d + 2.0;
s = 0.0;
s = s + 2.0;
return 0;
}
This bug has now been fixed. |
2. |
While exiting an
interrupt service routine for certain optimisation options, the
compiler did not restore the correct values of several scratch
registers. This bug has now been fixed. |
3. |
The
MOVML instruction generated by the compiler in the
interrupt service routine's epilogue for restoring scratch
registers was not consistent with the instruction used to save
scratch registers in the prologue.
This caused incorrect values
to be restored. This bug has now been fixed. |
HEW (For
Windows OS only):
1. |
The
endianness (big or little) was not updated in the assembler
settings as per the changes in the compiler settings. This bug
has now been fixed. |
2. |
Additional CPU options specified under the compiler tab in HEW
build phase settings were not updated automatically in the
library generator phase and the user was prompted to open the
Linker/ Library Generator option dialogs and click on "OK". This
bug has now been fixed by providing a single interface for
setting the compiler, assembler, linker and library generator
options. |
3. |
Up to version v0901, after
changing the "Library Generator" settings, the user was prompted
to open the Compiler/ Linker option dialogs and click on "OK".
This bug has now been fixed by providing a single interface for
setting the compiler, assembler, linker and library generator
options. |
4.
|
Use
of the Flash Development Tool (FDT) plug-ins under HEW on
Windows Vista is deprecated. Hence, users are advised to
download the latest version of the FDT application and use it independently for Flash downloads. |
KNOWN
LIMITATIONS IN SH-ELF:
This section
describes the known problems in this release. We intend to fix these
issues in future releases.
We
occasionally release maintenance packs for critical bugs fixes.
Windows and
GNU/Linux:
1. |
In
newlib, 'fmod' function fails with and without "-mrenesas"
option for the following single precision targets, |
a. |
SH2E |
b. |
SH2A-Single-Only |
c. |
SH3E |
d. |
SH4-Single-Only (little endian and big endian) |
e. |
SH4A-Single-Only (little endian and big endian) |
2. |
The
'log10', 'ldexp' and 'frexp' functions of optimised libraries
fail for SH4-Single-Only (little endian) and SH4A-Single-Only
(little endian) targets. |
3. |
Library Generator: Please refer to the following link for the
known issues and limitations related to this utility,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=002003&id=415&lang=en |
4. |
The
SH peripheral registers have strict access size requirements
with some registers requiring a byte level access. The GNUSH
compiler generates a word level instruction "mov.w" to
access these peripheral registers. This type of access currently
fails on hardware. Please refer to the following link for more
details,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=002003&id=430&lang=en
|
HEW (For
Windows OS only):
NOTE:
Windows
and GNU/Linux:
1. |
The
optimised libraries are provided
along with the Newlib libraries in
the toolchain and do not require a
separate download. |
2. |
The
optimised libraries ('liboptm.a'
and 'liboptc.a') are not provided
under GNU GPL. The source code of these
optimised libraries is neither released nor available on
request. |
3. |
The "libgen"
utility is not provided under GNU GPL. The source code of the "libgen"
utility is neither released nor available on request. |
|